﻿using System;
using System.Collections.Generic;
using System.Text;


namespace Service
{
    public interface IWindowAPI
    {
        void APIOpenAndSetWindow(String fileName);

        void APICopyData(IntPtr myWindows, IntPtr heWindows,List<string>data,List<int>InfoXY, bool? XYEvent);

        int APIGetSendMessage(IntPtr hwnd, int wMsg, int wParam, StringBuilder lParam);

        int APISetSendMessage(IntPtr Hwnd, int Msg, int wpala, string lpala);

        int APIClickSendMessage(IntPtr Hwnd, int Msg, int wpala, int lpala);

        int APIWindowFromPoint(int xPoint, int yPoint);

        IntPtr APIFindWindow(string lpClassName, string lpWindowName);

        IntPtr APIFindWindowEx(IntPtr hwndParent, IntPtr hwndChildAfter, string lpszClass, string lpszWindow);

        void APISetForegroundWindow(IntPtr hwnd);

        void APISetCursorPos(int x, int y);

        void APImouse_event(int dwFlags, int dx, int dy, int dwData, IntPtr dwExtraInfo);

        string[] GetLocation(IntPtr windows);

        string GetCompanyData(float X, float Y, float windowsLeft, float windowsTop);

        int APIGetWindowRect(IntPtr hwnd, out Service.WindowsAPIService.Rect lpRect);

        int APIChildWindowFromPoint(
  int xPoint,
  int yPoint
);
        IntPtr APIPostMessage(IntPtr hwnd, int wMsg, int wParam, int lParam);

        int APIShowWindow(IntPtr hwnd, int nCmdShow);

        int APISetWindowPos(IntPtr hWnd, int hWndInsertAfter, int x, int y, int Width, int Height, int flags);

        int APIGetWindowTextLength(IntPtr hwnd);

        int APIGetWindowText(
          IntPtr hWnd,
          StringBuilder lpString,
          int nMaxCount
      );
        bool APIBlockInput(bool Block);
    }
}
